// pages/pay/pay.js
import {
    request
} from "../../request/request";

import {
    requestPayment
} from "../../utils/asyncWx";
const app = getApp()
Page({

    /**
     * 页面的初始数据
     */
    data: {
        address: {
            username: ""
        },
        cart: [],
        // checkbox: false,
        price: 0,
        num: 0,
        pass: 111111,
        showPayPwdInput: false, //是否展示密码输入层
        pwdVal: '', //输入的密码
        payFocus: true, //文本框焦点
    },
    diZhi() {
        wx.chooseAddress({
            success: (result) => {
                let address = {
                    city: result.provinceName + result.cityName + result.countyName,
                    addressInfo: result.detailInfo,
                    username: result.userName,
                    telNumber: result.telNumber
                }
                // console.log(result)
                wx.setStorageSync('address', address)
                this.setData({
                    address: wx.getStorageSync('address')
                })
            }
        })
        // console.log(address)
    },
    zhiFu() {
        // 先判断缓存中有没有token
        // 没有跳转到授权页面 进行获取token
        // 有token下一步

        const token = wx.getStorageSync("token")
        if (!token) {
            wx.navigateTo({
                url: '/pages/auth/auth',
            })
        } else {
            this.showInputLayer();
        }
    },
    // 显示支付密码输入层
    showInputLayer() {
        this.setData({
            showPayPwdInput: true,
            payFocus: true
        });
    },
    hidePayLayer() {
        var val = this.data.pwdVal;
        if (val != this.data.pass) {
            this.setData({
                showPayPwdInput: false,
                payFocus: false,
                pwdVal: ''
            }, function () {
                /**弹框**/
                wx.showToast({
                    title: "密码错误"
                })
            });
        } else if (val == this.data.pass) {
            this.setData({
                showPayPwdInput: false,
                payFocus: false,
                pwdVal: ''
            });
            wx.showToast({
                title: "支付成功",
            })
            let newCart = wx.getStorageSync("cart");
            // 过滤已经选中的，留下未被选中的
            newCart = newCart.filter(v => !v.checked);
            // 10 删除后的数据填充回缓存
            wx.setStorageSync("cart", newCart);
            // 11 支付成功跳转到订单页面
            wx.navigateTo({
                url: '/pages/order/order',
            })
        }
    },
    // 获取焦点
    getFocus() {
        this.setData({
            payFocus: true
        });
    },
    inputPwd: function (e) {
        this.setData({
            pwdVal: e.detail.value
        });

        if (e.detail.value.length >= 6) {
            this.hidePayLayer();
        }
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {
        // const address = wx.getStorageSync("address");
        // 获取缓存中的购物车数据
        let cart = wx.getStorageSync("cart") || []
        // 过滤后的购物车数组
        cart = cart.filter(v => v.checked);
        // 把购物车数据重新设置回data中和缓存中
        // this.setData({
        //     address
        // });
        // 总价格和总数量
        let price = 0;
        let num = 0;
        cart.forEach(v => {
            price += v.num * v.data.message.goods_price;
            num += v.num;
        })
        // 给data赋值
        this.setData({
            cart,
            price,
            num
        })
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})